Computers, both those used in the home and those used by businesses, find much of their utility based in the software that is executed upon those computers. In many case, the first experience that a computer user or system administrator has with software is during the process of installing the software on a computer. It is often said that the first impression is the most important and this holds true as much in a software context as in any other.
Since installation is often the first encounter a customer has with a product, any negative experience can be detrimental to the quality associated with that product by the customer. For example, if a customer is evaluating software and cannot get the product installed, it is likely that the customer will not purchase the software later. Such installation problems may often go undetected by those responsible for creating installation methods for software (e.g., software engineers) because there has been no reliable method for providing information as to such failures. In the past, often sales or technical support has had to rely upon customer experiential information rather than hard data related to an installation failure.
Another issue presented to customers experiencing software installation failure has been an inability for the customer to automatically receive help, either in the form of a fix for the problem or links to advice for solving the problem or even communication from a technical support agent. It is therefore desirable to have a mechanism by which data related to a software installation failure is provided to members of the entity distributing the software, as well as a mechanism for automatically providing a solution or at least information related to the problem automatically to the customer.
In order to avoid delays in propagating fixes to installation-related failures, it is also desirable to have a mechanism by which propagation of solutions can be rapidly provided. It is further desirable to have a mechanism by which a newly-discovered installation-related failure can be rapidly remedied by providing an avenue for technical support agents to interact with a software installation that is currently in a failure mode.